home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / eulisp / you-075a.lha / you-075a / slots.h < prev    next >
C/C++ Source or Header  |  1992-06-18  |  1KB  |  41 lines

  1. /* ******************************************************************** */
  2. /*  slots.h          Copyright (C) Codemist and University of Bath 1989 */
  3. /*                                                                      */
  4. /* Slot/slot description manipulation                                    */
  5. /* ******************************************************************** */
  6.  
  7. /*
  8.  * Change Log:
  9.  *   Version 1, December 1989
  10.  */
  11.  
  12. #ifndef SLOTS_H
  13. #define SLOTS_H
  14.  
  15. /* Slot description primitives */
  16.  
  17. extern LispObject Fn_slot_description_name(LispObject*);
  18. extern LispObject Fn_slot_description_position(LispObject*);
  19. extern LispObject Fn_slot_description_initargs(LispObject*);
  20. extern LispObject Fn_slot_description_initform(LispObject*);
  21.  
  22. /* Weird abstractions... */
  23.  
  24. extern LispObject Fn_find_slot_description(LispObject*);
  25. extern LispObject Fn_add_slot_description(LispObject*);
  26.  
  27. /* Initialiser */
  28.  
  29. extern void initialise_slots(LispObject*);
  30.  
  31. /* slot structure */
  32.  
  33. #define slot_desc_name(slot) slotref(slot,0)
  34. #define slot_desc_position(slot) slotref(slot,1)
  35. #define slot_desc_initargs(slot) slotref(slot,2)
  36. #define slot_desc_initform(slot) slotref(slot,3)
  37. #define slot_desc_mutable(slot) slotref(slot,4)
  38.  
  39. #define N_SLOTS_IN_SD_CLASS 5
  40. #endif
  41.